package com.wgy.day42.SpringJDBC;

import com.wgy.day42.数据库连接池.druid工具类.JDBCUtils;
import org.springframework.jdbc.core.JdbcTemplate;

/*
Spring JDBC
   1.Spring框架对的JDBC简单封装.
     提供了一个JDBCTemplate对象简化JDBC的开发
     好处:不需要我们来申请连接对象
         不需要我们释放资源
         JDBCTemplate会自己向连接池申请连接对象,归还连接对象,释放资源等

   步骤: 1. 导入jar包
        2. 创建JDBCTemplate对象,此对象依赖于数据源DataSource
           JdbcTemplate template = new JdbcTemplate(ds);
        3. 调用JdbcTemplate 方法完成CRUD的操作
            方法:
            执行DML语句: update(): 增,删,改语句
            执行DQL语句: queryForMap(): 查询结果,将结果封装为map集合,将列表作为key,将值作为value,将这条记录封装为一个Map集合
                                      注意:此方法查询的结果集长度只能是1,也就是只能查询表中的一条记录
                        queryForList():查询结果,将结果封装为list集合
                                       注意:将每一条记录封装成一个Map集合,再将多个Map集合装载到List集合中
                        query():查询结果,将结果封装为javaBean对象
                                 参数: RowMapper
                                      一般我们使用BeanPropertyRowMapper实现类,可以完成数据到JavaBean的自动封装
                                 使用方式:new BeanPropertyRowMapper<封装的类型>(类型.class)
                        queryForObject():查询结果,将结果对象(一般是基本类型)
                                         一般用于聚合函数的查询

*/
public class Demo01JDBCTemplate {
    public static void main(String[] args) {
        //1.导入jar包
        //2.创建JDBCTemplate对象
        JdbcTemplate template = new JdbcTemplate(JDBCUtils.getDataSource());
        //3.调用JdbcTemplate 方法完成CRUD的操作
            // 更新表中的数据
        String sql="update account set balance= ? where id= ?";
        int count = template.update(sql, 5000, 3);
        System.out.println(count);

    }
}
